package br.com.etecmatao.admin.controller;

import br.com.etecmatao.business.BusinessLocator;
import br.com.etecmatao.business.impl.BusinessLocatorImpl;
import br.com.etecmatao.model.Campanhas;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;

@ManagedBean
public class FormCampanhas {

    private Campanhas campanhas;
    private BusinessLocator businessLocator;
    private DataModel<Campanhas> lista;

    public DataModel<Campanhas> getLista() {
        lista = new ListDataModel<Campanhas>(businessLocator.getCampanhasBusiness().finByAll());
        return lista;
    }

    public void setLista(DataModel<Campanhas> lista) {
        this.lista = lista;
    }

    public FormCampanhas() {
        campanhas = new Campanhas();
        businessLocator = new BusinessLocatorImpl();
    }

    public Campanhas getCamapanhas() {
        return campanhas;
    }

    public void setCamapanhas(Campanhas camapanhas) {
        this.campanhas = camapanhas;
    }

    public void save() {
        campanhas.setLogin((br.com.etecmatao.model.Login) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user"));
        campanhas.setStatus("A");
        if (campanhas.getIdCampanhas() != null) {
            businessLocator.getCampanhasBusiness().update(campanhas);
        } else {
            businessLocator.getCampanhasBusiness().save(campanhas);
        }
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Cadastro realizado com sucesso"));
    }

    public void delete() {
        campanhas = lista.getRowData();
        businessLocator.getCampanhasBusiness().delete(campanhas);
    }

    public String editar() {
        campanhas = lista.getRowData();
        return "formCampanhas";
    }

    public String create() {
        campanhas = new Campanhas();
        return "formCampanhas";
    }
}
